package com.hlm.demo.mapper;

import com.hlm.demo.entity.RoleInfo;
import com.hlm.demo.entity.RoleModule;
import com.hlm.demo.entity.ex.RoleWithModule;

import java.util.List;
import java.util.Map;

public interface RoleInfoMapper {

    /**
     *
     * @return  查询所有的角色
     */
    List<RoleInfo> findAllRole();

    /**
     *
     * @return 查询一共有多少个角色
     */
    int roleQuantity();

    /**
     *  根据id查找一个管理员
     * @param roleId
     * @return
     */
    RoleInfo findRoleById(Integer roleId);


    /**
     *
     * @return 查询所有的角色和对应的模块
     */
    List<RoleWithModule> findRoleWithModule(Map map);

    /**
     * 添加一个角色
     */
    int addOneRole(RoleInfo roleInfo);

    /**
     *  为一个角色分配它所对应的模块
     */
    int addOneRoleModule(RoleModule roleModule);

    /**
     *  删除一个角色(role_info)
     */
    int delRole(Integer roleId);



    /**
     * 删除一个角色对应的模块(role_module)
     */

    int delRoleModule(Integer roleId);

    /**
     *  更新一个角色
     */
    int updRole(Map map);

}
